<% all_audit_event_types = Gitlab::Audit::Type::Definition.definitions.map(&:last) %>
<% def boolean_to_docs(boolean) %>
<%   if boolean %>
<%     "**{check-circle}** Yes" %>
<%   else %>
<%     "**{dotted-circle}** No" %>
<%   end %>
<% end %>
---
stage: Govern
group: Compliance
info: "See the Technical Writers assigned to Development Guidelines: https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments-to-development-guidelines"
---

<!---
  This documentation is auto generated by a Rake task.

  Please do not edit this file directly. To update this file, run:
  bundle exec rake gitlab:audit_event_types:compile_docs
--->

# Audit event types **(ULTIMATE)**

Audit event types are used to [filter streamed audit events](index.md#update-event-filters).

Every audit event is associated with an event type. The association with the event type can mean that an audit event is:

- Saved to database. Audit events associated with these types are retrievable by using the audit events dashboard or the [audit events API](../../api/audit_events.md).
- Streamed. Audit events associated with these types are [streamed to external destinations](../index.md) if a
  destination is set.
- Not streamed. Audit events associated with these types are not streamed to external destinations even if a destination is set.

## Available audit event types

| Name | Description | Saved to database | Streamed | Feature category | Introduced in |
|:-----|:------------|:------------------|:---------|:-----------------|:--------------|
<% all_audit_event_types.each do |event_type| %>| <%= "[`#{event_type.name}`](#{event_type.introduced_by_mr})" %> | <%= event_type.description %> | <%= boolean_to_docs(event_type.saved_to_database) %> | <%= boolean_to_docs(event_type.streamed) %> | <%= "`#{event_type.feature_category}`" %> | GitLab <%= "[#{event_type.milestone}](#{event_type.introduced_by_issue})" %> |
<% end %>
